//XN.DataBox.js
//需要 FWK.AjaxList控件
//此类可以被继承
/**
 * 功能单一 一般是作为创建更复杂的类的 父类来使用
 */

//$init
/**
 * XN.DataBox的构建函数 当new时自动调用，并把new是的参数传入$init
 * _url:请求提交地址
 * _method：请求提交方式 POST|GET
 * _obj：请求提交的默认参数
 */

//askForData
/**
 * 请求服务器数据
 * _obj：请求服务器提交的参数列表，如果不写，则用默认列表
 */

//backData
/**
 * 作为askForData的回调函数
 * 检测返回数据，如果成功，调用 $completeData函数
 * 				如果失败，调用 $errData函数
 */

//$errData	ret {code:错误代码,des:错误描述}	code==-1时，为请求地址不正确
/**
 * 要求用户在 askForData 之前重写的函数 当请求数据获取失败时调用
 */

//$completeData
/**
 * 要求用户在 askForData 之前重写的函数 当请求数据获取成功时调用
 */

///url 			记录请求地址
///method 		记录请求方式 POST|GET
///obj			记录请求默认参数
///record		记录 获取正确的数据后 存数返回的XML

/*	使用 1  *///作为控件使用
var dataBox = new XN.DataBox("/one.xml","POST",{id:123});
FWK.extend(dataBox,{
	$errData:function(_ret){
		//请求出错后 
	},
	$completeData:function(){
		alert(this.record.xml);
	}
});

/*	使用 2  *///作为父类使用-->XN.Res.js 就是个很好的例子
var MusicBox = XN.DataBox.extend({
	$init:function(_obj){
		this.$init.superset.call(this,"/re/music.do","POST",_obj); //使用父类的 $init来请求数据
	}
});